#ifndef _ADC_H_
#define _ADC_H_

struct adc_reg {
    volatile unsigned int SR;
    volatile unsigned int CR1;
    volatile unsigned int CR2;
    volatile unsigned int SMPR1;
    volatile unsigned int SMPR2;
    volatile unsigned int JOFR1;
    volatile unsigned int JOFR2;
    volatile unsigned int JOFR3;
    volatile unsigned int JOFR4;
    volatile unsigned int HTR;
    volatile unsigned int LTR;
    volatile unsigned int SQR1;
    volatile unsigned int SQR2;
    volatile unsigned int SQR3;
    volatile unsigned int JSQR;
    volatile unsigned int JDR1;
    volatile unsigned int JDR2;
    volatile unsigned int JDR3;
    volatile unsigned int JDR4;
    volatile unsigned int DR;
};

void init_adc1(void);

extern volatile struct adc_reg *adc1;

#endif
